package cn.com.twoke.game.common.entity.message;

import cn.com.twoke.game.common.constants.MessageType;

public class InviteJoinGameMessage extends Message {

    private Type inviteType;
    private String gameRoomId;
    private String[] userIds;
    private String roomMasterId;
    private String gameId;
    private String gameTitle;
    private String inviteUserId;

    public enum Type {
        INVITE,
        ACCEPT,
        REJECT
    }

    public InviteJoinGameMessage(String gameRoomId, String[] userIds, String roomMasterId) {
        this.gameRoomId = gameRoomId;
        this.userIds = userIds;
        this.roomMasterId = roomMasterId;
        this.inviteType = Type.INVITE;
    }

    public InviteJoinGameMessage(String gameRoomId, String[] selectedPlayer,
                                 String roomMasterId, String gameId, String gameTitle) {
        this.gameRoomId = gameRoomId;
        this.userIds = selectedPlayer;
        this.roomMasterId = roomMasterId;
        this.gameId = gameId;
        this.gameTitle = gameTitle;
        this.inviteType = Type.INVITE;
    }

    public Type getInviteType() {
        return inviteType;
    }

    public void setInviteType(Type inviteType) {
        this.inviteType = inviteType;
    }

    public String getInviteUserId() {
        return inviteUserId;
    }

    public void setInviteUserId(String inviteUserId) {
        this.inviteUserId = inviteUserId;
    }

    public String getGameId() {
        return gameId;
    }

    public void setGameId(String gameId) {
        this.gameId = gameId;
    }

    public String getGameTitle() {
        return gameTitle;
    }

    public void setGameTitle(String gameTitle) {
        this.gameTitle = gameTitle;
    }

    public String getRoomMasterId() {
        return roomMasterId;
    }

    public void setRoomMasterId(String roomMasterId) {
        this.roomMasterId = roomMasterId;
    }

    public String getGameRoomId() {
        return gameRoomId;
    }

    public void setGameRoomId(String gameRoomId) {
        this.gameRoomId = gameRoomId;
    }

    public String[] getUserIds() {
        return userIds;
    }

    public void setUserIds(String[] userIds) {
        this.userIds = userIds;
    }

    @Override
    public MessageType getType() {
        return MessageType.INVITE_JOIN_GAME;
    }

}
